package com.sky.com.sky.service;

import com.sky.dto.DishDTO;
import com.sky.dto.DishPageDTO;
import com.sky.entity.Dish;
import com.sky.result.PageResult;
import com.sky.vo.DishVO;

import java.util.List;


public interface DishService {


    // 分页
    PageResult getPage(DishPageDTO dishPageDTO);

    // 菜品新增
    void saveDishWithFlavor(DishDTO dishDTO);
    // 回显菜品
    DishVO getById(Long id);

    Dish getById2(Long id);
    // 修改菜品
    void updateById(DishDTO dishDTO);

    void deleteBatch(Long[] ids);

    // 启用禁用
    void startOrStop(Integer status, Long id);

    // 查询菜品列表
    List<DishVO> getList(DishPageDTO dishPageDTO);

    //条件查询
    List<DishVO> getParamList(DishPageDTO dishPageDTO);

    //菜品分页查询
    PageResult page(DishPageDTO dishPageDTO);

    //根据id查询菜品和对应的口味数据
    DishVO getByIdWithFlavor(Long id);

    //修改菜品基本信息和对应的口味信息
    void updateWithFlavor(DishDTO dishDTO);

    //菜品起售 停售
    void enableOrDisable(Integer status, Long id);

    /*根据分类ID查询起售菜品列表*/
    List<Dish> listByCid(DishDTO dishDTO);

    /*根据分类ID擦汗寻菜品列表，包含口味*/
    List<DishVO> listWithFlavor(DishDTO dishDTO);

    //根据id查询菜品信息
    List<Dish> listByIds(Long[] ids);
}
